home *** CD-ROM | disk | FTP | other *** search
/ Just Call Me Internet / Just Call Me Internet.iso / com / computer / med_net / litt_net.tip next >
Text File  |  1990-04-29  |  6KB  |  121 lines

  1.                      Hinweise zu Little Net
  2.  
  3. Little Net arbeitet mit der MIDI-Schnittstelle des ATARI ST. Da es
  4. sich dabei um eine Stromschnittstelle (etwa 5mA) mit galvanischer
  5. Trennung ber Optokoppler handelt, sind auch gr”žere Entfernungen
  6. problemlos zu berwinden. Dreižig bis vierzig Meter sollten kein
  7. Problem sein!
  8.  
  9. Little Net wird als Laufwerk installiert. Alle Dateizugriffe
  10. erfolgen ber Laufwerk N. Little Net installiert sich daher
  11. zun„chst einmal, „hnlich wie eine Ramfloppy oder Festplatte, ber
  12. die HDV-Vektoren. In folgende Vektoren klinkt sich Little Net ein:
  13.  
  14. hdv_bpb:     ($472)  Vektor zum Holen des Bios-Parameter-Blocks
  15. hdv_rw:      ($476)  Vektor zum Lesen / Schreiben eines Sektors
  16. hdv_mediach: ($47E)  Vektor fr Media Change Routine
  17.  
  18. Will man nun  ber Laufwerk N auf ein Laufwerk  des anderen
  19. Rechners zugreifen, so geschieht folgendes. Zuerst wird wahrschein-
  20. lich eine BPB-Anforderung durchgefhrt. Dazu wird das Telegramm 1
  21. abgeschickt und als Antwort auf das Telegramm 2 gewartet. Erh„lt
  22. man das Telegramm 7 zurck, so ist etwas falsch gelaufen, und der
  23. BPB wird erneut angefordert. Sektor lesen und schreiben erfolgt
  24. nun analog ber die Telegramme 5 und 6 bzw. 3 und 4. Media Change
  25. geschieht nicht ber einen Telegrammaustausch, sondern wird durch
  26. ™ffnen der Dialogbox abgehandelt (siehe auch Beschreibung Little
  27. Net).
  28.  
  29. Wie erfolgt nun das Verschicken der Telegramme im einzelnen?
  30. Ausgangspunkt ist immer eine HDV-Routine. Hier wird das
  31. Anforderungstelegramm in einen Buffer gelegt, und die
  32. Sendeinterrupts freigegeben. Das Senden und Empfangen aller
  33. Telegramme erfolgt voll im Interrupt, damit beide ATARI m”glichst
  34. wenig gebremst werden. Der andere ST empf„ngt nun also das
  35. Telegramm im Interrupt, legt es in einen Buffer und setzt ein
  36. Flag. Eine Telegrammauswertung im Interrupt ist ja leider nicht
  37. m”glich, da man hier das Betriebssystem nicht aufrufen darf.
  38. Little Net klinkt sich deshalb in den BIOS-Trap ein und schaut bei
  39. jedem Bios-Aufruf nach, ob ein Telegramm angekommen ist. Wenn ja,
  40. wird das Telegramm beantwortet. Normalerweise macht jedes Programm
  41. einige 100 bis 1000 Bios-Aufrufe pro Sekunde, so daž eine prompte
  42. Antwort nicht ausbleibt. Sollte das Little Net aber einmal nicht
  43. funktionieren, so l„uft wahrscheinlich ein Programm, das v”llig am
  44. Betriebssystem vorbei programmiert ist, und keine BIOS-Aufrufe
  45. durchfhrt.
  46.  
  47. Einen Sonderfall bildet noch das Telegramm 8 (Message senden).
  48. Dieses Telegramm wird direkt aus dem Accessorie heraus abgesendet,
  49. und es erwartet keine Antwort. Das Telegramm wird am anderen ST
  50. auch nicht durch einen Bios-Aufruf ausgewertet, sondern durch
  51. einen Timer-Event. Dies funktioniert natrlich nur in
  52. GEM-Programmen. Die Meldung erscheint also erst auf dem anderen
  53. ST, wenn dort eine GEM-Applikation l„uft.
  54.  
  55. Noch etwas zum allgemeinen Telegrammaufbau. Vor jedem Telegramm
  56. werden 2 Sync-, nach jedem Telegramm werden 3 Sync-Bytes 0
  57. geschickt. Dadurch ist gew„hrleistet, daž der andere ST sich auf
  58. die Kennung synchronisiert. Nun wird dreimal das Kennbyte des
  59. Telegramms verschickt. Dies geschieht dreimal um auch bei einem
  60. evt. šbertragungsfehler eindeutig den Telegrammtyp bestimmen zu
  61. k”nnen. Aus dem Telegrammtyp bestimmt die Empfangsroutine n„mlich
  62. die Zahl der Zeichen die noch folgen. Am Ende eines jeden
  63. Telegramms steht noch eine 16 Bit Checksumme. Sollte diese nicht
  64. stimmen, so wird mit Telegramm 7 negativ geantwortet.
  65.  
  66.  
  67.  
  68.  
  69.                        Aufbau der Telegramme
  70.                        =====================
  71.  
  72. 1.) BPB anfordern:     3 Byte    Kennung      (F0)  -> L„nge 3
  73.                        1 Byte    Laufwerk     (0...)
  74.                        2 Byte    Checksumme
  75.  
  76. 2.) BPB senden:        3 Byte    Kennung      (D2)  -> L„nge 25
  77.                        1 Byte    Laufwerk     (0...)
  78.                        1 Byte    Status       (0 = OK / FF = Fehler)
  79.                       20 Byte    BPB
  80.                        1 Byte    Dummy
  81.                        2 Byte    Checksumme
  82.  
  83. 3.) Sektor schreiben:  3 Byte    Kennung      (B4)  -> L„nge 517
  84.                        1 Byte    Laufwerk     (0...)
  85.                        2 Byte    Sektornummer (0...)
  86.                      512 Byte    Sektor
  87.                        2 Byte    Checksumme
  88.  
  89. 4.) Schreibbest„t.:    3 Byte    Kennung      (96)  -> L„nge 7
  90.                        1 Byte    Laufwerk     (0...)
  91.                        2 Byte    Sektornummer (0...)
  92.                        1 Byte    Status       (0=OK / neg.=Fehler)
  93.                        1 Byte    Dummy
  94.                        2 Byte    Checksumme
  95.  
  96. 5.) Sektor anfordern:  3 Byte    Kennung      (78)  -> L„nge 5
  97.                        1 Byte    Laufwerk     (0...)
  98.                        2 Byte    Sektornummer (0...)
  99.                        2 Byte    Checksumme
  100.  
  101. 6.) Sektor lesen:      3 Byte    Kennung      (5A)  -> L„nge 519
  102.                        1 Byte    Laufwerk     (0...)
  103.                        2 Byte    Sektornummer (0...)
  104.                        1 Byte    Status       (0=OK / neg.=Fehler)
  105.                      512 Byte    Sektor
  106.                        1 Byte    Dummy
  107.                        2 Byte    Checksumme
  108.  
  109. 7.) negative Best„t.:  3 Byte    Kennung       (1E)  -> L„nge 3
  110.                        1 Byte    Dummy
  111.                        2 Byte    Checksumme
  112.  
  113. 8.) Message senden:    3 Byte    Kennung       (3c)  -> L„nge 63
  114.                       30 Byte    Zeile 1
  115.                       30 Byte    Zeile 2
  116.                        1 Byte    Dummy
  117.                        2 Byte    Checksumme
  118.  
  119.  
  120.  
  121.